package com.aop.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Description:
 * @author: zxl
 * @Data:2021/3/24
 */
@ApiModel(value = "com-aop-domain-WebLog")
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "web_log")
public class WebLog {
    @TableId(type = IdType.ID_WORKER_STR)
    @ApiModelProperty(value = "")
    private String id;

    /**
     * 描述
     */
    @TableField(value = "description")
    @ApiModelProperty(value = "描述")
    private String description;

    /**
     * 消耗时间
     */
    @TableField(value = "time_cost")
    @ApiModelProperty(value = "消耗时间")
    private Long timeCost;

    /**
     * 操作时间
     */
    @TableField(value = "start_time")
    @ApiModelProperty(value = "操作时间")
    private Long startTime;

    /**
     * 请求地址
     */
    @TableField(value = "url")
    @ApiModelProperty(value = "请求地址")
    private String url;

    /**
     * 请求uri
     */
    @TableField(value = "uri")
    @ApiModelProperty(value = "请求uri")
    private String uri;

    /**
     * 请求方式
     */
    @TableField(value = "http_method")
    @ApiModelProperty(value = "请求方式")
    private String httpMethod;

    /**
     * ip地址
     */
    @TableField(value = "ip_address")
    @ApiModelProperty(value = "ip地址")
    private String ipAddress;

    /**
     * 请求参数
     */
    @TableField(value = "params")
    @ApiModelProperty(value = "请求参数")
    private String params;

    /**
     * 请求返回结果
     */
    @TableField(value = "result")
    @ApiModelProperty(value = "请求返回结果")
    private String result;

    /**
     * 操作类型
     */
    @TableField(value = "method_type")
    @ApiModelProperty(value = "操作类型")
    private String methodType;

    @TableField(value = "create_time")
    @ApiModelProperty(value = "")
    private Date createTime;

    @TableField(value = "update_time")
    @ApiModelProperty(value = "")
    private Date updateTime;

    public static final String COL_ID = "id";

    public static final String COL_DESCRIPTION = "description";

    public static final String COL_TIME_COST = "time_cost";

    public static final String COL_START_TIME = "start_time";

    public static final String COL_URL = "url";

    public static final String COL_URI = "uri";

    public static final String COL_HTTP_METHOD = "http_method";

    public static final String COL_IP_ADDRESS = "ip_address";

    public static final String COL_PARAMS = "params";

    public static final String COL_RESULT = "result";

    public static final String COL_METHOD_TYPE = "method_type";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_TIME = "update_time";
}